package com.itmuch.box.domain.category.entity;
// Generated 2015-12-29 22:06:46 by Hibernate Tools 4.3.1.Final

import static javax.persistence.GenerationType.IDENTITY;

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;

import com.itmuch.box.core.base.BaseEntity;

/**
 * Category generated by hbm2java
 */
@Entity
@Table(name = "f_category", catalog = "yayi_spring_boot")
@DynamicInsert
@DynamicUpdate
public class Category extends BaseEntity {

    private Integer id;
    private Integer modelId;
    private Integer parentId;
    private String name;
    private String title;
    private String keyword;
    private String description;
    private Integer listOrder;
    private String target;
    private boolean hasContentFlag;
    private boolean showFlag;
    private Date createTime;
    private Date updateTime;
    private Integer createId;
    private Integer updateId;

    public Category() {
    }

    public Category(Integer modelId, Integer parentId, String name, String title, String keyword, String description, Integer listOrder,
            String target, boolean hasContentFlag, boolean showFlag, Date createTime, Date updateTime, Integer createId, Integer updateId) {
        this.modelId = modelId;
        this.parentId = parentId;
        this.name = name;
        this.title = title;
        this.keyword = keyword;
        this.description = description;
        this.listOrder = listOrder;
        this.target = target;
        this.hasContentFlag = hasContentFlag;
        this.showFlag = showFlag;
        this.createTime = createTime;
        this.updateTime = updateTime;
        this.createId = createId;
        this.updateId = updateId;
    }

    @Override
    @Id
    @GeneratedValue(strategy = IDENTITY)

    @Column(name = "id", unique = true, nullable = false)
    public Integer getId() {
        return this.id;
    }

    @Override
    public void setId(Integer id) {
        this.id = id;
    }

    @Column(name = "model_id", nullable = false)
    public Integer getModelId() {
        return this.modelId;
    }

    public void setModelId(Integer modelId) {
        this.modelId = modelId;
    }

    @Column(name = "parent_id", nullable = false)
    public Integer getParentId() {
        return this.parentId;
    }

    public void setParentId(Integer parentId) {
        this.parentId = parentId;
    }

    @Column(name = "name", nullable = false)
    public String getName() {
        return this.name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Column(name = "title", nullable = false)
    public String getTitle() {
        return this.title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    @Column(name = "keyword", nullable = false)
    public String getKeyword() {
        return this.keyword;
    }

    public void setKeyword(String keyword) {
        this.keyword = keyword;
    }

    @Column(name = "description", nullable = false)
    public String getDescription() {
        return this.description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    @Column(name = "list_order", nullable = false)
    public Integer getListOrder() {
        return this.listOrder;
    }

    public void setListOrder(Integer listOrder) {
        this.listOrder = listOrder;
    }

    @Column(name = "target", nullable = false, length = 20)
    public String getTarget() {
        return this.target;
    }

    public void setTarget(String target) {
        this.target = target;
    }

    @Column(name = "has_content_flag", nullable = false)
    public boolean isHasContentFlag() {
        return this.hasContentFlag;
    }

    public void setHasContentFlag(boolean hasContentFlag) {
        this.hasContentFlag = hasContentFlag;
    }

    @Column(name = "show_flag", nullable = false)
    public boolean isShowFlag() {
        return this.showFlag;
    }

    public void setShowFlag(boolean showFlag) {
        this.showFlag = showFlag;
    }

    @Override
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name = "create_time", nullable = false, length = 0)
    public Date getCreateTime() {
        return this.createTime;
    }

    @Override
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    @Override
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name = "update_time", nullable = false, length = 0)
    public Date getUpdateTime() {
        return this.updateTime;
    }

    @Override
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    @Override
    @Column(name = "create_id", nullable = false)
    public Integer getCreateId() {
        return this.createId;
    }

    @Override
    public void setCreateId(Integer createId) {
        this.createId = createId;
    }

    @Override
    @Column(name = "update_id", nullable = false)
    public Integer getUpdateId() {
        return this.updateId;
    }

    @Override
    public void setUpdateId(Integer updateId) {
        this.updateId = updateId;
    }

}
